1. Field of the Invention
The present invention relates to a data transfer control device and electronic equipment comprising the same, and, in particular, to a data transfer control device that enables data transfer in accordance with the IEEE 1394 standard between a plurality of nodes connected to a bus, and electronic equipment comprising the same.
2. Description of Related Art
An interface standard called IEEE 1394 has recently been attracting much attention. This IEEE 1394 has standardized high-speed serial bus interfaces that can handle the next generation of multimedia devices. IEEE 1394 makes it possible to handle data that is required to have real-time capabilities, such as moving images. A bus in accordance with IEEE 1394 can be connected not only to peripheral equipment for computers, such as printers, scanners, CD-RW drives, and hard disk drives, but also to domestic appliances such as video cameras, VCRs, and TVs. This standard is therefore expected to enable a dramatic acceleration of the digitalization of electronic equipment.
Under this IEEE 1394, an event called a bus reset occurs when new electronic equipment is connected to the bus, electronic equipment is removed from the bus, or the number of nodes connected to the bus increases. When a bus reset occurs, the topology information relating to the nodes is cleared then this topology information is automatically set again. In other words, after a bus reset, tree identification (determination of the root node) and self identification are performed, then the nodes that are to act as management nodes, such as the isochronous resource manager, are determined. Ordinary packer transfer then starts.
Since the topology information is automatically set again after a bus reset, this enables a “hot state” in which cables can be unplugged or plugged (hot plugs). This enables ordinary users to remove cables as desired, in the same manner as with ordinary domestic electrical appliances such as VCRs, which is useful in promoting home network systems.
However, it has become clear that the occurrence of such a bus reset causes problems, as described below.
In other words, since the unplugging or the plugging of a cable causes a bus reset, the firmware (processing means) operating in the CPU is unable to forecast when such a bus reset will occur. It could therefore happen that the firmware issues a command to start a data transfer during the bus reset period after a bus reset has occurred (or at substantially the same time as a bus reset). When such a situation occurs, it is possible that an error could occur, such as the start of transmission of a packet that ought to have been invalidated by the bus reset.